package com.tianqi.common.enums;

/**
 * 卦宫，卦类，卦申信息
 *
 * @author zhangzedi
 * @date 2023/8/20 17:57
 **/
public enum GuaGongEnum {
	LIWEIHUO("33", "离为火", "离1", "六冲", "阳6", "巳"),
	HUOSHANLV("37", "火山旅", "离2", "六合", "阴1", "午"),
	HUOFENGDING("35", "火风鼎", "离3", "", "阳2", "丑"),
	HUOSHUIWEIJI("36", "火水未济", "离4", "", "阴3", "申"),
	SHANSHUIMENG("76", "山水蒙", "离5", "", "阴4", "酉"),
	FENGSHUIHUAN("56", "风水涣", "离6", "", "阳5", "辰"),
	TIANSHUISONG("16", "天水讼", "离7", "游魂", "阳4", "卯"),
	TIANHUOTONGREN("13", "天火同人", "离8", "归魂", "阳3", "寅"),


	KANWEISHUI("66", "坎为水", "坎1", "六冲", "阴6", "亥"),
	SHUIZEJIE("62", "水泽节", "坎2", "六合", "阳1", "子"),

	SHUILEITUI("64", "水雷屯", "坎3", "", "阴2", "未"),

	SHUIHUOJIJI("63", "水火既济", "坎4", "", "阳3", "寅"),

	ZEHUOGE("23", "泽火革", "坎5", "", "阳4", "卯"),

	LEIHUOFENG("43", "雷火丰", "坎6", "", "阴5", "戌"),

	DIHUOMINGYI("83", "地火明夷", "坎7", "游魂", "阴4", "酉"),

	DISHUISHI("86", "地水师", "坎8", "归魂", "阴3", "申"),


	GENWEISHAN("77", "艮为山", "艮1", "六冲", "阳6", "巳"),

	SHANHUOBEN("73", "山火贲", "艮2", "六合", "阳1", "子"),

	SHANTIANDACHU("71", "山天大畜", "艮3", "", "阳2", "丑"),

	SHANZESHUI("72", "山泽损", "艮4", "", "阴3", "申"),

	HUOZEKUI("32", "火泽睽", "艮5", "", "阳4", "卯"),

	TIANZELV("12", "天泽履", "艮6", "", "阳5", "辰"),

	FENGZEZHONGFU("52", "风泽中孚", "艮7", "游魂", "阴4", "酉"),

	FENGSHANJIAN("57", "风山渐", "艮8", "归魂", "阳3", "寅"),


	DUIWEIZE("22", "兑为泽", "兑1", "六冲", "阴6", "亥"),

	ZESHUIKUN("26", "泽水困", "兑2", "六合", "阴1", "午"),

	ZEDICUI("28", "泽地萃", "兑3", "", "阴2", "未"),

	ZESHANWEI("27", "泽山咸", "兑4", "", "阳3", "寅"),

	SHUISHANQIAN("67", "水山蹇", "兑5", "", "阴4", "酉"),

	DISHANJIAN("87", "地山谦", "兑6", "", "阴5", "戌"),

	LEISHANXIAOGUO("47", "雷山小过", "兑7", "游魂", "阳4", "卯"),

	LEIZEGUIMEI("42", "雷泽归妹", "兑8", "归魂", "阴3", "申"),


	LEIWEIZHEN("44", "震为雷", "震1", "六冲", "阴6", "亥"),

	LEIDIYU("48", "雷地豫", "震2", "六合", "阴1", "午"),

	LEISHUIJIE("46", "雷水解", "震3", "", "阳2", "丑"),

	LEIFENGHENG("45", "雷风恒", "震4", "", "阳3", "寅"),

	DIFENGSHEN("85", "地风升", "震5", "", "阴4", "酉"),

	SHUIFENGJING("65", "水风井", "震6", "", "阳5", "辰"),

	ZEFENGDAGUO("25", "泽风大过", "震7", "游魂", "阳4", "卯"),

	ZELEISUI("24", "泽雷随", "震8", "归魂", "阴3", "申"),


	XUNWEIFENG("55", "巽为风", "巽1", "六冲", "阳6", "巳"),

	FENGTIANXIAOXU("51", "风天小畜", "巽2", "", "阳1", "子"),

	FENGHUOJIAREN("53", "风火家人", "巽3", "", "阴2", "未"),

	FENGLEIYI("54", "风雷益", "巽4", "", "阴3", "申"),

	TIANLEIWUWANG("14", "天雷无妄", "巽5", "六冲", "阳4", "卯"),

	HUOLEISHIKE("34", "火雷噬嗑", "巽6", "", "阴5", "戌"),

	SHANLEIYI("74", "山雷颐", "巽7", "游魂", "阴4", "酉"),

	SHANFENGGU("75", "山风蛊", "巽8", "归魂", "阳3", "寅"),


	KUNWEIDI("88", "坤为地", "坤1", "六冲", "阴6", "亥"),

	DILEIFU("84", "地雷复", "坤2", "六合", "阳1", "子"),

	DIZELIN("82", "地泽临", "坤3", "", "阳2", "丑"),

	DITIANTAI("81", "地天泰", "坤4", "六合", "阳3", "寅"),

	LEITIANDAZHUANG("41", "雷天大壮", "坤5", "六冲", "阳4", "卯"),

	ZETIANGUAI("21", "泽天夬", "坤6", "", "阳5", "辰"),

	SHUITIANXU("61", "水天需", "坤7", "游魂", "阴4", "酉"),

	SHUIDIBI("68", "水地比", "坤8", "归魂", "阴3", "申"),


	QIANWEITIAN("11", "乾为天", "乾1", "六冲", "阳6", "巳"),

	TIANFENGGOU("15", "天风姤", "乾2", "", "阴1", "午"),

	TIANSHANDUN("17", "天山遁", "乾3", "", "阴2", "未"),

	TIANDIPI("18", "天地否", "乾4", "六合", "阴3", "申"),

	FENGDIGUAN("58", "风地观", "乾5", "", "阴4", "酉"),

	SHANDIBAO("78", "山地剥", "乾6", "", "阴5", "戌"),

	HUODIJIN("38", "火地晋", "乾7", "游魂", "阳4", "卯"),

	HUOTIANDAYOU("31", "火天大有", "乾8", "归魂", "阳3", "寅");


	/**
	 * 组合卦合并的下标
	 */
	private String guaIndex;

	/**
	 * 组合卦的名称
	 */
	private String guaName;

	/**
	 * 卦宫
	 */
	private String guaGong;

	/**
	 * 卦类
	 */
	private String guaLei;

	/**
	 * 卦身补充
	 */
	private String guaShenExt;
	/**
	 * 卦身
	 */
	private String guaShen;


	public String getGuaIndex() {
		return guaIndex;
	}

	public String getGuaName() {
		return guaName;
	}

	public String getGuaGong() {
		return guaGong;
	}

	public String getGuaLei() {
		return guaLei;
	}

	public String getGuaShenExt() {
		return guaShenExt;
	}

	public String getGuaShen() {
		return guaShen;
	}

	GuaGongEnum(String guaIndex, String guaName, String guaGong, String guaLei, String guaShenExt, String guaShen) {
		this.guaIndex = guaIndex;
		this.guaName = guaName;
		this.guaGong = guaGong;
		this.guaLei = guaLei;
		this.guaShenExt = guaShenExt;
		this.guaShen = guaShen;
	}

	/**
	 * 根据合并的下标获取枚举
	 *
	 * @param index
	 * @return
	 */
	public static GuaGongEnum getGongByIndex(String index) {
		GuaGongEnum[] values = GuaGongEnum.values();
		for (GuaGongEnum guaGongEnum : values) {
			if (index.equals(guaGongEnum.getGuaIndex())) {
				return guaGongEnum;
			}
		}
		return null;
	}
}
